<?php
class transacao{
	private $id;
	private $id_boleto;
	private $id_inscricao;
        private $id_evento;
        private $id_empresa;
	private $nosso_numero;
	private $valor_documento;
	private $dt_documento;
	private $dt_vencimento;
	private $dt_pagamento;
	private $valor_pago;
        private $status;

	public function __construct(){
		$this->id = NULL;
		$this->id_boleto = NULL;
		$this->id_inscricao = NULL;
                $this->id_evento = NULL;
                $this->id_empresa = NULL;
		$this->nosso_numero = NULL;
		$this->valor_documento = NULL;
		$this->dt_documento = NULL;
		$this->dt_vencimento = NULL;
		$this->dt_pagamento = NULL;
		$this->valor_pago = NULL;
                $this->status = NULL;
	}

	public function get_id(){
		return $this->id;
	}
	public function get_id_boleto(){
		return $this->id_boleto;
	}
	public function get_id_inscricao(){
		return $this->id_inscricao;
	}
        public function get_id_evento(){
		return $this->id_evento;
	}
        public function get_id_empresa(){
		return $this->id_empresa;
	}
	public function get_nosso_numero(){
		return $this->nosso_numero;
	}
	public function get_valor_documento(){
		return $this->valor_documento;
	}
	public function get_dt_documento(){
		return $this->dt_documento;
	}
	public function get_dt_vencimento(){
		return $this->dt_vencimento;
	}
	public function get_dt_pagamento(){
		return $this->dt_pagamento;
	}
	public function get_valor_pago(){
		return $this->valor_pago;
	}
        public function get_status(){
		return $this->status;
	}
	
	
	public function set_id($id){
		if($id != '' && valida::numero($id)){
                    $this->id = $id;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_id_boleto($id_boleto){
		if($id_boleto != '' && valida::numero($id_boleto)){
                    $this->id_boleto = $id_boleto;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_id_inscricao($id_inscricao){
		if($id_inscricao != '' && valida::numero($id_inscricao)){
                    $this->id_inscricao = $id_inscricao;
                    return 1;
		}else{
                    return 0;
                }
        }
        
        public function set_id_evento($id_evento){
		if($id_evento != '' && valida::numero($id_evento)){
                    $this->id_evento = $id_evento;
                    return 1;
		}else{
                    return 0;
                }
        }

        public function set_id_empresa($id_empresa){
		if($id_empresa != '' && valida::numero($id_empresa)){
                    $this->id_empresa = $id_empresa;
                    return 1;
		}else{
                    return 0;
                }
        }
        
	public function set_nosso_numero($nosso_numero){
		if($nosso_numero != '' && valida::numero($nosso_numero)){
                    $this->nosso_numero = $nosso_numero;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_valor_documento($valor_documento){
		if($valor_documento != '' && valida::float($valor_documento)){
                    $this->valor_documento = $valor_documento;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_dt_documento($dt_documento){
		if($dt_documento != '' && valida::data($dt_documento)){
                    $this->dt_documento = $dt_documento;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_dt_vencimento($dt_vencimento){
		if($dt_vencimento != '' && valida::data($dt_vencimento)){
                    $this->dt_vencimento = data_sql($dt_vencimento);
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_dt_pagamento($dt_pagamento){
		if(valida::data($dt_pagamento)){
                    $this->dt_pagamento = $dt_pagamento;
                    return 1;
		}else{
                    return 0;
                }
        }

	public function set_valor_pago($valor_pago){
		if(valida::float($valor_pago)){
                    $this->valor_pago = $valor_pago;
                    return 1;
		}else{
                    return 0;
                }
        }
        
        public function set_status($status){
		if(valida::numero($status)){
                    $this->status = $status;
                    return 1;
		}else{
                    return 0;
                }
        }

	
	
	public function salvar(){
                $db = new db(config::$driver);
 		$con = $db->conecta();
                
                $sql = "SELECT id FROM transacao WHERE id_boleto = '".$this->id_boleto."' AND id_inscricao = '".$this->id_inscricao."' AND id_evento = '".$this->id_evento."'";
                $result = $db->query($sql, $con);
                $id = $db->fetch_array($result);
                
                if($id[0] != ''){
                    $this->id = $id[0];
                    $sql = "update transacao set id = '".$this->id."', id_boleto = '".$this->id_boleto."', id_inscricao = '".$this->id_inscricao."', id_evento = '".$this->id_evento."', id_empresa = '".$this->id_empresa."', nosso_numero = '".$this->nosso_numero."', valor_documento = '".$this->valor_documento."', dt_documento = '".$this->dt_documento."', dt_vencimento = '".$this->dt_vencimento."', dt_pagamento = '".$this->dt_pagamento."', valor_pago = '".$this->valor_pago."', status = '".$this->status."' where id = '$this->id'";
                }else{
                    $sql = "insert into transacao(id_boleto, id_inscricao, id_evento, id_empresa, nosso_numero, valor_documento, dt_documento, dt_vencimento, dt_pagamento, valor_pago, status) values('".$this->id_boleto."', '".$this->id_inscricao."', '".$this->id_evento."', '".$this->id_empresa."', '".$this->nosso_numero."', '".$this->valor_documento."', '".$this->dt_documento."', '".$this->dt_vencimento."', '".$this->dt_pagamento."', '".$this->valor_pago."', '".$this->status."')";
                }

		$res = $db->query($sql, $con);
                
		$db->close($con);

		return $res;
	}
	public function carregar($id){
		$sql = "select * from transacao where id = '$id'";

		$db = new db(config::$driver);
 		$con = $db->conecta();
		$res = $db->query($sql, $con);
		$db->close($con);

		$transacao = $db->fetch_array($res);

		$this->id = $transacao["id"];
		$this->id_boleto = $transacao["id_boleto"];
		$this->id_inscricao = $transacao["id_inscricao"];
                $this->id_evento = $transacao["id_evento"];
                $this->id_empresa = $transacao["id_empresa"];
		$this->nosso_numero = $transacao["nosso_numero"];
		$this->valor_documento = $transacao["valor_documento"];
		$this->dt_documento = $transacao["dt_documento"];
		$this->dt_vencimento = $transacao["dt_vencimento"];
		$this->dt_pagamento = $transacao["dt_pagamento"];
		$this->valor_pago = $transacao["valor_pago"];
                $this->status = $transacao["status"];
		
		return 1;
	}
}